package com.ruoyi.oar.domain.dto;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.GeneralDTO;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Builder;
import lombok.Data;
import lombok.experimental.Tolerate;
import org.springframework.format.annotation.DateTimeFormat;

import javax.validation.constraints.NotBlank;
import java.io.Serializable;
import java.time.LocalDateTime;

/**
 * 租客入住记录对象 oar_check_in_recordDTO
 *
 * @author ruoyi
 * @date 2022-02-21
 */
@Builder
@Data
@ApiModel("租客入住记录业务对象")
//@JsonInclude(JsonInclude.Include.NON_NULL) 是否忽略空值
public class OarCheckInRecordDTO extends GeneralDTO implements Serializable{
    private static final long serialVersionUID = 1L;
    @Tolerate
    public OarCheckInRecordDTO() {
    }
    /** 租客姓名 */
    @ApiModelProperty(value = "租客姓名")
    @Excel(name = "租客姓名")
    private String tenantName;
    /** 房屋id */
    @ApiModelProperty(value = "房屋id")
    @Excel(name = "房屋id")
    private String houseId;
    /** 房间号 */
    @ApiModelProperty(value = "房间号")
    @Excel(name = "房间号")
    private String roomsNo;
    /** 手机号 */
    @ApiModelProperty(value = "手机号")
    @Excel(name = "手机号")
    private String phone;
    /** 身份证号 */
    @ApiModelProperty(value = "身份证号")
    @Excel(name = "身份证号")
    private String cardId;
    /** 入住时间 */
    @NotBlank(message = "入住时间不能为空")
    @ApiModelProperty(value = "入住时间")
    @JsonFormat( pattern="yyyy-MM-dd HH:mm:ss")
    private LocalDateTime checkInTime;
    /** 离开时间 */
    @NotBlank(message = "离开时间不能为空")
    @ApiModelProperty(value = "离开时间")
    @JsonFormat( pattern="yyyy-MM-dd HH:mm:ss")
    private LocalDateTime checkOutTime;
    /** 身份图片Base64*/
    @ApiModelProperty(value = "身份图Base64")
    @Excel(name = "身份图片Base64")
    private String imageUrl;
    /** 人脸核验状态 0 待核验 1通过 2不通过 */
    @ApiModelProperty(value = "人脸核验状态 0 待核验 1通过 2不通过")
    @Excel(name = "人脸核验状态 0 待核验 1通过 2不通过")
    private Integer faceVerifiState;
    /** 单位名称*/
    private String companyName;

    @NotBlank(message = "sonwId不能为空")
    @ApiModelProperty(value = "sonwId")
    private String sonwId;
    /** 人脸核验图片URL*/
    @ApiModelProperty(value = "人脸核验图片URL")
    @Excel(name = "人脸核验图片URL")
    private String faceImageUrl;


}
